// RegistryPlugins.h

#ifndef __REGISTRYPLUGINS_H
#define __REGISTRYPLUGINS_H

#include <memory>
#include <vector>

namespace Common {
namespace Registry {

enum EPluginType
{
  kPluginTypeFF = 0
};

struct CPluginInfo
{
  CString FilePath;
  EPluginType Type;
  CString Name;
  CLSID ClassID;
  CLSID OptionsClassID;
  bool ClassIDDefined;
  bool OptionsClassIDDefined;

  // CString Extension;
  // CString AddExtension;
  // bool UpdateEnabled;
  // bool KeepName;
};

void ReadPluginInfoList(std::vector<std::shared_ptr<CPluginInfo> >  &plugins);
void ReadFileFolderPluginInfoList(std::vector<std::shared_ptr<CPluginInfo> >  &plugins);

} //namespace Registry

} //namespace Common

#endif
